home *** CD-ROM | disk | FTP | other *** search
/ InterCD 2001 May / may_2001.iso / intercd / root / Multimedia / ^DivX_Article / virtualdub / VirtualDub-source-1_4d / CVideoCompressor.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-03-20  |  3.5 KB  |  73 lines

  1. //    VirtualDub - Video processing and capture application
  2. //    Copyright (C) 1998-2001 Avery Lee
  3. //
  4. //    This program is free software; you can redistribute it and/or modify
  5. //    it under the terms of the GNU General Public License as published by
  6. //    the Free Software Foundation; either version 2 of the License, or
  7. //    (at your option) any later version.
  8. //
  9. //    This program is distributed in the hope that it will be useful,
  10. //    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. //    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12. //    GNU General Public License for more details.
  13. //
  14. //    You should have received a copy of the GNU General Public License
  15. //    along with this program; if not, write to the Free Software
  16. //    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  17.  
  18. #ifndef _f_CVIDEOCOMPRESSOR_H
  19. #define _f_CVIDEOCOMPRESSOR_H
  20.  
  21. #include <windows.h>
  22. #include <vfw.h>
  23.  
  24. #include "IVideoCompressor.h"
  25.  
  26. class CVideoCompressor : public IVideoCompressor {
  27. public:
  28.     virtual ~CVideoCompressor();
  29.  
  30.     virtual LRESULT About                (HWND hwnd)                                            ;
  31.     virtual LRESULT CompressBegin        (BITMAPINFO *lpbiInput, BITMAPINFO *lpbiOutput)        ;
  32.     virtual LRESULT CompressEnd            ()                                                    ;
  33.     virtual LRESULT Configure            (HWND hwnd)                                            ;
  34.     virtual LRESULT Decompress            (ICDECOMPRESS *icd, DWORD cbSize)                    ;
  35.     virtual LRESULT DecompressBegin        (BITMAPINFO *lpbiInput, BITMAPINFO *lpbiOutput)        ;
  36.     virtual LRESULT DecompressEnd        ()                                                    ;
  37.     virtual LRESULT DecompressGetPalette(BITMAPINFOHEADER *lpbiInput, BITMAPINFOHEADER *lpbiOutput)        ;
  38.     virtual LRESULT DecompressQuery        (BITMAPINFO *lpbiInput, BITMAPINFO *lpbiOutput)        ;
  39.     virtual LRESULT DecompressSetPalette(BITMAPINFOHEADER *lpbiPalette)                        ;
  40.     virtual LRESULT DecompressExBegin    (ICDECOMPRESSEX *icdex, DWORD cbSize)                ;
  41.     virtual LRESULT DecompressExEnd        ()                                                    ;
  42.     virtual LRESULT Draw                (ICDRAW *icdraw, DWORD cbSize)                        ;
  43.     virtual LRESULT DrawBegin            (ICDRAWBEGIN *icdrwBgn, DWORD cbSize)                ;
  44.     virtual LRESULT DrawChangePalette    (BITMAPINFO *lpbiInput)                                ;
  45.     virtual LRESULT DrawEnd                ()                                                    ;
  46.     virtual LRESULT DrawFlush            ()                                                    ;
  47.     virtual LRESULT DrawGetPalette        ()                                                    ;
  48.     virtual LRESULT DrawGetTime            (DWORD *lplTime)                                    ;
  49.     virtual LRESULT DrawQuery            (BITMAPINFO *lpbiInput)                                ;
  50.     virtual LRESULT DrawRealize            (HDC hdc, BOOL fBackground)                            ;
  51.     virtual LRESULT DrawRenderBuffer    ()                                                    ;
  52.     virtual LRESULT DrawSetTime            (DWORD lpTime)                                        ;
  53.     virtual LRESULT DrawStart            ()                                                    ;
  54.     virtual LRESULT DrawStartPlay        (DWORD lFrom, DWORD lTo)                            ;
  55.     virtual LRESULT DrawStop            ()                                                    ;
  56.     virtual LRESULT DrawStopPlay        ()                                                    ;
  57.     virtual LRESULT DrawSuggestFormat    (ICDRAWSUGGEST *icdrwSuggest, DWORD cbSize)            ;
  58.     virtual LRESULT DrawWindow            (RECT *prc)                                            ;
  59.     virtual LRESULT Get                    (LPVOID pv, DWORD cbSize)                            ;
  60.     virtual LRESULT GetBuffersWanted    (DWORD *lpdwBuffers)                                ;
  61.     virtual LRESULT GetDefaultKeyFrameRate(DWORD *lpdwICValue)                                ;
  62.     virtual LRESULT GetDefaultQuality    (DWORD *lpdwICValue)                                ;
  63.     virtual LRESULT GetQuality            (DWORD *lpdwICValue)                                ;
  64.     virtual LRESULT GetState            (LPVOID pv, DWORD cbSize)                            ;
  65.     virtual LRESULT SetStatusProc        (ICSETSTATUSPROC *icsetstatusProc, DWORD cbSize)    ;
  66.     virtual LRESULT SetQuality            (DWORD *lpdwICValue)                                ;
  67.     virtual LRESULT SetState            (LPVOID pv, DWORD cbSize)                            ;
  68.  
  69.     virtual LRESULT Default                (DWORD dwDriverID, HDRVR hDriver, UINT uiMessage, LPARAM lParam1, LPARAM lParam2);
  70. };
  71.  
  72. #endif
  73.